/** layui-v2.4.5 MIT License By https://www.layui.com */
layui.define(["laytpl", "laypage", "layer", "form", "util"], function (e) {
    "use strict";
    var t = layui.$,
        i = layui.laytpl,
        a = layui.laypage,
        l = layui.layer,
        n = layui.form,
        o = (layui.util, layui.hint()),
        r = layui.device(),
        d = {
            config: { checkName: "LAY_CHECKED", indexName: "LAY_TABLE_INDEX" },
            cache: {},
            index: layui.table ? layui.table.index + 1e4 : 0,
            set: function (e) {
                var i = this;
                return (i.config = t.extend({}, i.config, e)), i;
            },
            on: function (e, t) {
                return layui.onevent.call(this, u, e, t);
            },
        },
        c = function () {
            var e = this,
                t = e.config,
                i = t.id || t.index;
            return (
                i && ((c.that[i] = e), (c.config[i] = t)),
                {
                    reload: function (t) {
                        e.reload.call(e, t);
                    },
                    setColsWidth: function () {
                        e.setColsWidth.call(e);
                    },
                    resize: function () {
                        e.resize.call(e);
                    },
                    config: t,
                }
            );
        },
        s = function (e) {
            var t = c.config[e];
            return t || o.error("The ID option was not found in the table instance"), t || null;
        },
        u = "table",
        h = ".layui-table",
        y = "layui-hide",
        f = "layui-none",
        p = "layui-table-view",
        v = ".layui-table-tool",
        m = ".layui-table-box",
        g = ".layui-table-init",
        b = ".layui-table-header",
        x = ".layui-table-body",
        k = ".layui-table-main",
        C = ".layui-table-fixed",
        w = ".layui-table-fixed-l",
        T = ".layui-table-fixed-r",
        A = ".layui-table-total",
        L = ".layui-table-page",
        S = ".layui-table-sort",
        N = "layui-table-edit",
        W = "layui-table-hover",
        _ = function (e) {
            var t = '{{#if(item2.colspan){}} colspan="{{item2.colspan}}"{{#} if(item2.rowspan){}} rowspan="{{item2.rowspan}}"{{#}}}';
            return (
                (e = e || {}),
                [
                    '<table cellspacing="0" cellpadding="0" border="0" class="layui-table" ',
                    '{{# if(d.data.skin){ }}lay-skin="{{d.data.skin}}"{{# } }} {{# if(d.data.size){ }}lay-size="{{d.data.size}}"{{# } }} {{# if(d.data.even){ }}lay-even{{# } }}>',
                    "<thead>",
                    "{{# layui.each(d.data.cols, function(i1, item1){ }}",
                    "<tr>",
                    "{{# layui.each(item1, function(i2, item2){ }}",
                    '{{# if(item2.fixed && item2.fixed !== "right"){ left = true; } }}',
                    '{{# if(item2.fixed === "right"){ right = true; } }}',
                    (function () {
                        return e.fixed && "right" !== e.fixed
                            ? '{{# if(item2.fixed && item2.fixed !== "right"){ }}'
                            : "right" === e.fixed
                            ? '{{# if(item2.fixed === "right"){ }}'
                            : "";
                    })(),
                    "{{# var isSort = !(item2.colGroup) && item2.sort; }}",
                    '<th data-field="{{ item2.field||i2 }}" data-key="{{d.index}}-{{i1}}-{{i2}}" {{# if( item2.parentKey){ }}data-parentkey="{{ item2.parentKey }}"{{# } }} {{# if(item2.minWidth){ }}data-minwidth="{{item2.minWidth}}"{{# } }} ' +
                        t +
                        ' {{# if(item2.unresize || item2.colGroup){ }}data-unresize="true"{{# } }} class="{{# if(item2.hide){ }}layui-hide{{# } }}{{# if(isSort){ }} layui-unselect{{# } }}{{# if(!item2.field){ }} layui-table-col-special{{# } }}">',
                    '<div class="layui-table-cell laytable-cell-',
                    "{{# if(item2.colGroup){ }}",
                    "group",
                    "{{# } else { }}",
                    "{{d.index}}-{{i1}}-{{i2}}",
                    '{{# if(item2.type !== "normal"){ }}',
                    " laytable-cell-{{ item2.type }}",
                    "{{# } }}",
                    "{{# } }}",
                    '" {{#if(item2.align){}}align="{{item2.align}}"{{#}}}>',
                    '{{# if(item2.type === "checkbox"){ }}',
                    '<input type="checkbox" name="layTableCheckbox" lay-skin="primary" lay-filter="layTableAllChoose" {{# if(item2[d.data.checkName]){ }}checked{{# }; }}>',
                    "{{# } else { }}",
                    '<span>{{item2.title||""}}</span>',
                    "{{# if(isSort){ }}",
                    '<span class="layui-table-sort layui-inline"><i class="layui-edge layui-table-sort-asc" title="升序"></i><i class="layui-edge layui-table-sort-desc" title="降序"></i></span>',
                    "{{# } }}",
                    "{{# } }}",
                    "</div>",
                    "</th>",
                    e.fixed ? "{{# }; }}" : "",
                    "{{# }); }}",
                    "</tr>",
                    "{{# }); }}",
                    "</thead>",
                    "</table>",
                ].join("")
            );
        },
        E = [
            '<table cellspacing="0" cellpadding="0" border="0" class="layui-table" ',
            '{{# if(d.data.skin){ }}lay-skin="{{d.data.skin}}"{{# } }} {{# if(d.data.size){ }}lay-size="{{d.data.size}}"{{# } }} {{# if(d.data.even){ }}lay-even{{# } }}>',
            "<tbody></tbody>",
            "</table>",
        ].join(""),
        z = [
            '<div class="layui-form layui-border-box {{d.VIEW_CLASS}}" lay-filter="LAY-table-{{d.index}}" lay-id="{{ d.data.id }}" style="{{# if(d.data.width){ }}width:{{d.data.width}}px;{{# } }} {{# if(d.data.height){ }}height:{{d.data.height}}px;{{# } }}">',
            "{{# if(d.data.toolbar){ }}",
            '<div class="layui-table-tool">',
            '<div class="layui-table-tool-temp"></div>',
            '<div class="layui-table-tool-self"></div>',
            "</div>",
            "{{# } }}",
            '<div class="layui-table-box">',
            "{{# if(d.data.loading){ }}",
            '<div class="layui-table-init" style="background-color: #fff;">',
            '<i class="layui-icon layui-icon-loading layui-icon"></i>',
            "</div>",
            "{{# } }}",
            "{{# var left, right; }}",
            '<div class="layui-table-header">',
            _(),
            "</div>",
            '<div class="layui-table-body layui-table-main">',
            E,
            "</div>",
            "{{# if(left){ }}",
            '<div class="layui-table-fixed layui-table-fixed-l">',
            '<div class="layui-table-header">',
            _({ fixed: !0 }),
            "</div>",
            '<div class="layui-table-body">',
            E,
            "</div>",
            "</div>",
            "{{# }; }}",
            "{{# if(right){ }}",
            '<div class="layui-table-fixed layui-table-fixed-r">',
            '<div class="layui-table-header">',
            _({ fixed: "right" }),
            '<div class="layui-table-mend"></div>',
            "</div>",
            '<div class="layui-table-body">',
            E,
            "</div>",
            "</div>",
            "{{# }; }}",
            "</div>",
            "{{# if(d.data.totalRow){ }}",
            '<div class="layui-table-total">',
            '<table cellspacing="0" cellpadding="0" border="0" class="layui-table" ',
            '{{# if(d.data.skin){ }}lay-skin="{{d.data.skin}}"{{# } }} {{# if(d.data.size){ }}lay-size="{{d.data.size}}"{{# } }} {{# if(d.data.even){ }}lay-even{{# } }}>',
            '<tbody><tr><td><div class="layui-table-cell" style="visibility: hidden;">Total</div></td></tr></tbody>',
            "</table>",
            "</div>",
            "{{# } }}",
            "{{# if(d.data.page){ }}",
            '<div class="layui-table-page">',
            '<div id="layui-table-page{{d.index}}"></div>',
            "</div>",
            "{{# } }}",
            "<style>",
            "{{# layui.each(d.data.cols, function(i1, item1){",
            "layui.each(item1, function(i2, item2){ }}",
            ".laytable-cell-{{d.index}}-{{i1}}-{{i2}}{ ",
            "{{# if(item2.width){ }}",
            "width: {{item2.width}}px;",
            "{{# } }}",
            " }",
            "{{# });",
            "}); }}",
            "</style>",
            "</div>",
        ].join(""),
        H = t(window),
        R = t(document),
        F = function (e) {
            var i = this;
            (i.index = ++d.index), (i.config = t.extend({}, i.config, d.config, e)), i.render();
        };
    (F.prototype.config = { limit: 10, loading: !0, cellMinWidth: 60, defaultToolbar: ["filter", "exports", "print"], autoSort: !0, text: { none: "无数据" } }),
        (F.prototype.render = function () {
            var e = this,
                a = e.config;
            if (
                ((a.elem = t(a.elem)),
                (a.where = a.where || {}),
                (a.id = a.id || a.elem.attr("id") || e.index),
                (a.request = t.extend({ pageName: "page", limitName: "limit" }, a.request)),
                (a.response = t.extend({ statusName: "code", statusCode: 0, msgName: "msg", dataName: "data", countName: "count" }, a.response)),
                "object" == typeof a.page &&
                    ((a.limit = a.page.limit || a.limit),
                    (a.limits = a.page.limits || a.limits),
                    (e.page = a.page.curr = a.page.curr || 1),
                    delete a.page.elem,
                    delete a.page.jump),
                !a.elem[0])
            )
                return e;
            a.height && /^full-\d+$/.test(a.height) && ((e.fullHeightGap = a.height.split("-")[1]), (a.height = H.height() - e.fullHeightGap)), e.setInit();
            var l = a.elem,
                n = l.next("." + p),
                o = (e.elem = t(i(z).render({ VIEW_CLASS: p, data: a, index: e.index })));
            if (
                ((a.index = e.index),
                n[0] && n.remove(),
                l.after(o),
                (e.layTool = o.find(v)),
                (e.layBox = o.find(m)),
                (e.layHeader = o.find(b)),
                (e.layMain = o.find(k)),
                (e.layBody = o.find(x)),
                (e.layFixed = o.find(C)),
                (e.layFixLeft = o.find(w)),
                (e.layFixRight = o.find(T)),
                (e.layTotal = o.find(A)),
                (e.layPage = o.find(L)),
                e.renderToolbar(),
                e.fullSize(),
                a.cols.length > 1)
            ) {
                var r = e.layFixed.find(b).find("th");
                r.height(e.layHeader.height() - 1 - parseFloat(r.css("padding-top")) - parseFloat(r.css("padding-bottom")));
            }
            e.pullData(e.page), e.events();
        }),
        (F.prototype.initOpts = function (e) {
            var t = this,
                i = (t.config, { checkbox: 48, radio: 48, space: 15, numbers: 40 });
            e.checkbox && (e.type = "checkbox"),
                e.space && (e.type = "space"),
                e.type || (e.type = "normal"),
                "normal" !== e.type && ((e.unresize = !0), (e.width = e.width || i[e.type]));
        }),
        (F.prototype.setInit = function (e) {
            var t = this,
                i = t.config;
            return (
                (i.clientWidth =
                    i.width ||
                    (function () {
                        var e = function (t) {
                            var a, l;
                            (t = t || i.elem.parent()), (a = t.width());
                            try {
                                l = "none" === t.css("display");
                            } catch (n) {}
                            return !t[0] || (a && !l) ? a : e(t.parent());
                        };
                        return e();
                    })()),
                "width" === e
                    ? i.clientWidth
                    : void layui.each(i.cols, function (e, a) {
                          layui.each(a, function (l, n) {
                              if (!n) return void a.splice(l, 1);
                              if (((n.key = e + "-" + l), (n.hide = n.hide || !1), n.colGroup || n.colspan > 1)) {
                                  var o = 0;
                                  layui.each(i.cols[e + 1], function (t, i) {
                                      i.HAS_PARENT ||
                                          (o > 1 && o == n.colspan) ||
                                          ((i.HAS_PARENT = !0), (i.parentKey = e + "-" + l), (o += parseInt(i.colspan > 1 ? i.colspan : 1)));
                                  }),
                                      (n.colGroup = !0);
                              }
                              t.initOpts(n);
                          });
                      })
            );
        }),
        (F.prototype.renderToolbar = function () {
            var e = this,
                a = e.config,
                l = [
                    '<div class="layui-inline" lay-event="add"><i class="layui-icon layui-icon-add-1"></i></div>',
                    '<div class="layui-inline" lay-event="update"><i class="layui-icon layui-icon-edit"></i></div>',
                    '<div class="layui-inline" lay-event="delete"><i class="layui-icon layui-icon-delete"></i></div>',
                ].join(""),
                n = e.layTool.find(".layui-table-tool-temp");
            if ("default" === a.toolbar) n.html(l);
            else if ("string" == typeof a.toolbar) {
                var o = t(a.toolbar).html() || "";
                o && n.html(i(o).render(a));
            }
            var r = {
                    filter: { title: "筛选列", layEvent: "LAYTABLE_COLS", icon: "layui-icon-cols" },
                    exports: { title: "导出", layEvent: "LAYTABLE_EXPORT", icon: "layui-icon-export" },
                    print: { title: "打印", layEvent: "LAYTABLE_PRINT", icon: "layui-icon-print" },
                },
                d = [];
            "object" == typeof a.defaultToolbar &&
                layui.each(a.defaultToolbar, function (e, t) {
                    var i = r[t];
                    i && d.push('<div class="layui-inline" title="' + i.title + '" lay-event="' + i.layEvent + '"><i class="layui-icon ' + i.icon + '"></i></div>');
                }),
                e.layTool.find(".layui-table-tool-self").html(d.join(""));
        }),
        (F.prototype.setParentCol = function (e, t) {
            var i = this,
                a = i.config,
                l = i.layHeader.find('th[data-key="' + a.index + "-" + t + '"]'),
                n = parseInt(l.attr("colspan")) || 0;
            if (l[0]) {
                var o = t.split("-"),
                    r = a.cols[o[0]][o[1]];
                e ? n-- : n++, l.attr("colspan", n), l[n < 1 ? "addClass" : "removeClass"](y), (r.colspan = n), (r.hide = n < 1);
                var d = l.data("parentkey");
                d && i.setParentCol(e, d);
            }
        }),
        (F.prototype.setColsPatch = function () {
            var e = this,
                t = e.config;
            layui.each(t.cols, function (t, i) {
                layui.each(i, function (t, i) {
                    i.hide && e.setParentCol(i.hide, i.parentKey);
                });
            });
        }),
        (F.prototype.setColsWidth = function () {
            var e = this,
                t = e.config,
                i = 0,
                a = 0,
                l = 0,
                n = 0,
                o = e.setInit("width");
            e.eachCols(function (e, t) {
                t.hide || i++;
            }),
                (o =
                    o -
                    (function () {
                        return "line" === t.skin || "nob" === t.skin ? 2 : i + 1;
                    })() -
                    e.getScrollWidth(e.layMain[0]) -
                    1);
            var r = function (e) {
                layui.each(t.cols, function (i, r) {
                    layui.each(r, function (i, d) {
                        var c = 0,
                            s = d.minWidth || t.cellMinWidth;
                        return d
                            ? void (
                                  d.colGroup ||
                                  d.hide ||
                                  (e
                                      ? l && l < s && (a--, (c = s))
                                      : ((c = d.width || 0), /\d+%$/.test(c) ? ((c = Math.floor((parseFloat(c) / 100) * o)), c < s && (c = s)) : c || ((d.width = c = 0), a++)),
                                  d.hide && (c = 0),
                                  (n += c))
                              )
                            : void r.splice(i, 1);
                    });
                }),
                    o > n && a && (l = (o - n) / a);
            };
            r(),
                r(!0),
                (e.autoColNums = a),
                e.eachCols(function (i, a) {
                    var n = a.minWidth || t.cellMinWidth;
                    a.colGroup ||
                        a.hide ||
                        (0 === a.width
                            ? e.getCssRule(t.index + "-" + a.key, function (e) {
                                  e.style.width = Math.floor(l >= n ? l : n) + "px";
                              })
                            : /\d+%$/.test(a.width) &&
                              e.getCssRule(t.index + "-" + a.key, function (e) {
                                  e.style.width = Math.floor((parseFloat(a.width) / 100) * o) + "px";
                              }));
                });
            var d = e.layMain.width() - e.getScrollWidth(e.layMain[0]) - e.layMain.children("table").outerWidth();
            if (e.autoColNums && d >= -i && d <= i) {
                var c = function (t) {
                        var i;
                        return (t = t || e.layHeader.eq(0).find("thead th:last-child")), (i = t.data("field")), !i && t.prev()[0] ? c(t.prev()) : t;
                    },
                    s = c(),
                    u = s.data("key");
                e.getCssRule(u, function (t) {
                    var i = t.style.width || s.outerWidth();
                    (t.style.width = parseFloat(i) + d + "px"), e.layMain.height() - e.layMain.prop("clientHeight") > 0 && (t.style.width = parseFloat(t.style.width) - 1 + "px");
                });
            }
            e.loading(!0);
        }),
        (F.prototype.resize = function () {
            var e = this;
            e.fullSize(), e.setColsWidth(), e.scrollPatch();
        }),
        (F.prototype.reload = function (e) {
            var i = this;
            i.config.data && i.config.data.constructor === Array && delete i.config.data, (i.config = t.extend({}, i.config, e)), i.render();
        }),
        (F.prototype.page = 1),
        (F.prototype.pullData = function (e) {
            var i = this,
                a = i.config,
                l = a.request,
                n = a.response,
                o = function () {
                    "object" == typeof a.initSort && i.sort(a.initSort.field, a.initSort.type);
                };
            if (((i.startTime = new Date().getTime()), a.url)) {
                var r = {};
                (r[l.pageName] = e), (r[l.limitName] = a.limit);
                var d = t.extend(r, a.where);
                a.contentType && 0 == a.contentType.indexOf("application/json") && (d = JSON.stringify(d)),
                    t.ajax({
                        type: a.method || "get",
                        url: a.url,
                        contentType: a.contentType,
                        data: d,
                        dataType: "json",
                        headers: a.headers || {},
                        success: function (t) {
                            "function" == typeof a.parseData && (t = a.parseData(t) || t),
                                t[n.statusName] != n.statusCode
                                    ? (i.renderForm(),
                                      i.layMain.html(
                                          '<div class="' +
                                              f +
                                              '">' +
                                              (t[n.msgName] || "返回的数据不符合规范，正确的成功状态码 (" + n.statusName + ") 应为：" + n.statusCode) +
                                              "</div>"
                                      ))
                                    : (i.renderData(t, e, t[n.countName]), o(), (a.time = new Date().getTime() - i.startTime + " ms")),
                                i.setColsWidth(),
                                "function" == typeof a.done && a.done(t, e, t[n.countName]);
                        },
                        error: function (e, t) {
                            i.layMain.html('<div class="' + f + '">数据接口请求异常：' + t + "</div>"), i.renderForm(), i.setColsWidth();
                        },
                    });
            } else if (a.data && a.data.constructor === Array) {
                var c = {},
                    s = e * a.limit - a.limit;
                (c[n.dataName] = a.data.concat().splice(s, a.limit)),
                    (c[n.countName] = a.data.length),
                    i.renderData(c, e, a.data.length),
                    o(),
                    i.setColsWidth(),
                    "function" == typeof a.done && a.done(c, e, c[n.countName]);
            }
        }),
        (F.prototype.eachCols = function (e) {
            var t = this;
            return d.eachCols(null, e, t.config.cols), t;
        }),
        (F.prototype.renderData = function (e, n, o, r) {
            var c = this,
                s = c.config,
                u = e[s.response.dataName] || [],
                h = [],
                p = [],
                v = [],
                m = function () {
                    var e;
                    return !r && c.sortKey
                        ? c.sort(c.sortKey.field, c.sortKey.sort, !0)
                        : (layui.each(u, function (a, l) {
                              var o = [],
                                  u = [],
                                  f = [],
                                  m = a + s.limit * (n - 1) + 1;
                              0 !== l.length &&
                                  (r || (l[d.config.indexName] = a),
                                  c.eachCols(function (n, r) {
                                      var c = r.field || n,
                                          h = s.index + "-" + r.key,
                                          p = l[c];
                                      if (((void 0 !== p && null !== p) || (p = ""), !r.colGroup)) {
                                          var v = [
                                              '<td data-field="' +
                                                  c +
                                                  '" data-key="' +
                                                  h +
                                                  '" ' +
                                                  (function () {
                                                      var e = [];
                                                      return (
                                                          r.edit && e.push('data-edit="' + r.edit + '"'),
                                                          r.align && e.push('align="' + r.align + '"'),
                                                          r.templet && e.push('data-content="' + p + '"'),
                                                          r.toolbar && e.push('data-off="true"'),
                                                          r.event && e.push('lay-event="' + r.event + '"'),
                                                          r.style && e.push('style="' + r.style + '"'),
                                                          r.minWidth && e.push('data-minwidth="' + r.minWidth + '"'),
                                                          e.join(" ")
                                                      );
                                                  })() +
                                                  ' class="' +
                                                  (function () {
                                                      var e = [];
                                                      return r.hide && e.push(y), r.field || e.push("layui-table-col-special"), e.join(" ");
                                                  })() +
                                                  '">',
                                              '<div class="layui-table-cell laytable-cell-' +
                                                  (function () {
                                                      return "normal" === r.type ? h : h + " laytable-cell-" + r.type;
                                                  })() +
                                                  '">' +
                                                  (function () {
                                                      var n = t.extend(!0, { LAY_INDEX: m }, l),
                                                          o = d.config.checkName;
                                                      switch (r.type) {
                                                          case "checkbox":
                                                              return (
                                                                  '<input type="checkbox" name="layTableCheckbox" lay-skin="primary" ' +
                                                                  (function () {
                                                                      return r[o] ? ((l[o] = r[o]), r[o] ? "checked" : "") : n[o] ? "checked" : "";
                                                                  })() +
                                                                  ">"
                                                              );
                                                          case "radio":
                                                              return (
                                                                  n[o] && (e = a),
                                                                  '<input type="radio" name="layTableRadio_' +
                                                                      s.index +
                                                                      '" ' +
                                                                      (n[o] ? "checked" : "") +
                                                                      ' lay-type="layTableRadio">'
                                                              );
                                                          case "numbers":
                                                              return m;
                                                      }
                                                      return r.toolbar
                                                          ? i(t(r.toolbar).html() || "").render(n)
                                                          : r.templet
                                                          ? (function () {
                                                                return "function" == typeof r.templet ? r.templet(n) : i(t(r.templet).html() || String(p)).render(n);
                                                            })()
                                                          : p;
                                                  })(),
                                              "</div></td>",
                                          ].join("");
                                          o.push(v), r.fixed && "right" !== r.fixed && u.push(v), "right" === r.fixed && f.push(v);
                                      }
                                  }),
                                  h.push('<tr data-index="' + a + '">' + o.join("") + "</tr>"),
                                  p.push('<tr data-index="' + a + '">' + u.join("") + "</tr>"),
                                  v.push('<tr data-index="' + a + '">' + f.join("") + "</tr>"));
                          }),
                          c.layBody.scrollTop(0),
                          c.layMain.find("." + f).remove(),
                          c.layMain.find("tbody").html(h.join("")),
                          c.layFixLeft.find("tbody").html(p.join("")),
                          c.layFixRight.find("tbody").html(v.join("")),
                          c.renderForm(),
                          "number" == typeof e && c.setThisRowChecked(e),
                          c.syncCheckAll(),
                          c.haveInit
                              ? c.scrollPatch()
                              : setTimeout(function () {
                                    c.scrollPatch();
                                }, 50),
                          (c.haveInit = !0),
                          l.close(c.tipsIndex),
                          s.HAS_SET_COLS_PATCH || c.setColsPatch(),
                          void (s.HAS_SET_COLS_PATCH = !0));
                };
            return (
                (c.key = s.id || s.index),
                (d.cache[c.key] = u),
                c.layPage[0 == o || (0 === u.length && 1 == n) ? "addClass" : "removeClass"](y),
                r
                    ? m()
                    : 0 === u.length
                    ? (c.renderForm(),
                      c.layFixed.remove(),
                      c.layMain.find("tbody").html(""),
                      c.layMain.find("." + f).remove(),
                      c.layMain.append('<div class="' + f + '">' + s.text.none + "</div>"))
                    : (m(),
                      c.renderTotal(u),
                      void (
                          s.page &&
                          ((s.page = t.extend(
                              {
                                  elem: "layui-table-page" + s.index,
                                  count: o,
                                  limit: s.limit,
                                  limits: s.limits || [10, 20, 30, 40, 50, 60, 70, 80, 90],
                                  groups: 3,
                                  layout: ["prev", "page", "next", "skip", "count", "limit"],
                                  prev: '<i class="layui-icon">&#xe603;</i>',
                                  next: '<i class="layui-icon">&#xe602;</i>',
                                  jump: function (e, t) {
                                      t || ((c.page = e.curr), (s.limit = e.limit), c.loading(), c.pullData(e.curr));
                                  },
                              },
                              s.page
                          )),
                          (s.page.count = o),
                          a.render(s.page))
                      ))
            );
        }),
        (F.prototype.renderTotal = function (e) {
            var t = this,
                i = t.config,
                a = {};
            if (i.totalRow) {
                layui.each(e, function (e, i) {
                    0 !== i.length &&
                        t.eachCols(function (e, t) {
                            var l = t.field || e,
                                n = i[l];
                            t.totalRow && (a[l] = (a[l] || 0) + (parseFloat(n) || 0));
                        });
                });
                var l = [];
                t.eachCols(function (e, t) {
                    var n = t.field || e,
                        o = [
                            '<td data-field="' +
                                n +
                                '" data-key="' +
                                i.index +
                                "-" +
                                t.key +
                                '" ' +
                                (function () {
                                    var e = [];
                                    return (
                                        t.align && e.push('align="' + t.align + '"'),
                                        t.style && e.push('style="' + t.style + '"'),
                                        t.minWidth && e.push('data-minwidth="' + t.minWidth + '"'),
                                        e.join(" ")
                                    );
                                })() +
                                ' class="' +
                                (function () {
                                    var e = [];
                                    return t.hide && e.push(y), t.field || e.push("layui-table-col-special"), e.join(" ");
                                })() +
                                '">',
                            '<div class="layui-table-cell laytable-cell-' +
                                (function () {
                                    var e = i.index + "-" + t.key;
                                    return "normal" === t.type ? e : e + " laytable-cell-" + t.type;
                                })() +
                                '">' +
                                (function () {
                                    var e = t.totalRowText || "";
                                    return t.totalRow ? parseFloat(a[n]).toFixed(2) || e : e;
                                })(),
                            "</div></td>",
                        ].join("");
                    l.push(o);
                }),
                    t.layTotal.find("tbody").html("<tr>" + l.join("") + "</tr>");
            }
        }),
        (F.prototype.getColElem = function (e, t) {
            var i = this,
                a = i.config;
            return e.eq(0).find(".laytable-cell-" + (a.index + "-" + t) + ":eq(0)");
        }),
        (F.prototype.renderForm = function (e) {
            n.render(e, "LAY-table-" + this.index);
        }),
        (F.prototype.setThisRowChecked = function (e) {
            var t = this,
                i = (t.config, "layui-table-click"),
                a = t.layBody.find('tr[data-index="' + e + '"]');
            a.addClass(i).siblings("tr").removeClass(i);
        }),
        (F.prototype.sort = function (e, i, a, l) {
            var n,
                r,
                c = this,
                s = {},
                h = c.config,
                y = h.elem.attr("lay-filter"),
                f = d.cache[c.key];
            "string" == typeof e &&
                c.layHeader.find("th").each(function (i, a) {
                    var l = t(this),
                        o = l.data("field");
                    if (o === e) return (e = l), (n = o), !1;
                });
            try {
                var n = n || e.data("field"),
                    p = e.data("key");
                if (c.sortKey && !a && n === c.sortKey.field && i === c.sortKey.sort) return;
                var v = c.layHeader.find("th .laytable-cell-" + p).find(S);
                c.layHeader.find("th").find(S).removeAttr("lay-sort"), v.attr("lay-sort", i || null), c.layFixed.find("th");
            } catch (m) {
                return o.error("Table modules: Did not match to field");
            }
            (c.sortKey = { field: n, sort: i }),
                h.autoSort && ("asc" === i ? (r = layui.sort(f, n)) : "desc" === i ? (r = layui.sort(f, n, !0)) : ((r = layui.sort(f, d.config.indexName)), delete c.sortKey)),
                (s[h.response.dataName] = r || f),
                c.renderData(s, c.page, c.count, !0),
                l && layui.event.call(e, u, "sort(" + y + ")", { field: n, type: i });
        }),
        (F.prototype.loading = function (e) {
            var i = this,
                a = i.config;
            a.loading &&
                (e
                    ? (i.layInit && i.layInit.remove(), delete i.layInit, i.layBox.find(g).remove())
                    : ((i.layInit = t(['<div class="layui-table-init">', '<i class="layui-icon layui-icon-loading layui-icon"></i>', "</div>"].join(""))),
                      i.layBox.append(i.layInit)));
        }),
        (F.prototype.setCheckData = function (e, t) {
            var i = this,
                a = i.config,
                l = d.cache[i.key];
            l[e] && l[e].constructor !== Array && (l[e][a.checkName] = t);
        }),
        (F.prototype.syncCheckAll = function () {
            var e = this,
                t = e.config,
                i = e.layHeader.find('input[name="layTableCheckbox"]'),
                a = function (i) {
                    return (
                        e.eachCols(function (e, a) {
                            "checkbox" === a.type && (a[t.checkName] = i);
                        }),
                        i
                    );
                };
            i[0] &&
                (d.checkStatus(e.key).isAll
                    ? (i[0].checked || (i.prop("checked", !0), e.renderForm("checkbox")), a(!0))
                    : (i[0].checked && (i.prop("checked", !1), e.renderForm("checkbox")), a(!1)));
        }),
        (F.prototype.getCssRule = function (e, t) {
            var i = this,
                a = i.elem.find("style")[0],
                l = a.sheet || a.styleSheet || {},
                n = l.cssRules || l.rules;
            layui.each(n, function (i, a) {
                if (a.selectorText === ".laytable-cell-" + e) return t(a), !0;
            });
        }),
        (F.prototype.fullSize = function () {
            var e,
                t = this,
                i = t.config,
                a = i.height;
            t.fullHeightGap && ((a = H.height() - t.fullHeightGap), a < 135 && (a = 135), t.elem.css("height", a)),
                a &&
                    ((e = parseFloat(a) - (t.layHeader.outerHeight() || 38)),
                    i.toolbar && (e -= t.layTool.outerHeight() || 50),
                    i.totalRow && (e -= t.layTotal.outerHeight() || 40),
                    i.page && (e = e - (t.layPage.outerHeight() || 41) - 2),
                    t.layMain.css("height", e));
        }),
        (F.prototype.getScrollWidth = function (e) {
            var t = 0;
            return (
                e
                    ? (t = e.offsetWidth - e.clientWidth)
                    : ((e = document.createElement("div")),
                      (e.style.width = "100px"),
                      (e.style.height = "100px"),
                      (e.style.overflowY = "scroll"),
                      document.body.appendChild(e),
                      (t = e.offsetWidth - e.clientWidth),
                      document.body.removeChild(e)),
                t
            );
        }),
        (F.prototype.scrollPatch = function () {
            var e = this,
                i = e.layMain.children("table"),
                a = e.layMain.width() - e.layMain.prop("clientWidth"),
                l = e.layMain.height() - e.layMain.prop("clientHeight"),
                n = (e.getScrollWidth(e.layMain[0]), i.outerWidth() - e.layMain.width()),
                o = function (e) {
                    if (a && l) {
                        if (((e = e.eq(0)), !e.find(".layui-table-patch")[0])) {
                            var i = t('<th class="layui-table-patch"><div class="layui-table-cell"></div></th>');
                            i.find("div").css({ width: a }), e.find("tr").append(i);
                        }
                    } else e.find(".layui-table-patch").remove();
                };
            o(e.layHeader), o(e.layTotal);
            var r = e.layMain.height(),
                d = r - l;
            e.layFixed.find(x).css("height", i.height() >= d ? d : "auto"), e.layFixRight[n > 0 ? "removeClass" : "addClass"](y), e.layFixRight.css("right", a - 1);
        }),
        (F.prototype.events = function () {
            var e,
                a = this,
                o = a.config,
                c = t("body"),
                s = {},
                h = a.layHeader.find("th"),
                f = ".layui-table-cell",
                p = o.elem.attr("lay-filter");
            a.layTool.on("click", "*[lay-event]", function (e) {
                var i = t(this),
                    c = i.attr("lay-event"),
                    s = function (e) {
                        var l = t(e.list),
                            n = t('<ul class="layui-table-tool-panel"></ul>');
                        n.html(l),
                            o.height && n.css("max-height", o.height - (a.layTool.outerHeight() || 50)),
                            i.find(".layui-table-tool-panel")[0] || i.append(n),
                            a.renderForm(),
                            n.on("click", function (e) {
                                layui.stope(e);
                            }),
                            e.done && e.done(n, l);
                    };
                switch ((layui.stope(e), R.trigger("table.tool.panel.remove"), l.close(a.tipsIndex), c)) {
                    case "LAYTABLE_COLS":
                        s({
                            list: (function () {
                                var e = [];
                                return (
                                    a.eachCols(function (t, i) {
                                        i.field &&
                                            "normal" == i.type &&
                                            e.push(
                                                '<li><input type="checkbox" name="' +
                                                    i.field +
                                                    '" data-key="' +
                                                    i.key +
                                                    '" data-parentkey="' +
                                                    (i.parentKey || "") +
                                                    '" lay-skin="primary" ' +
                                                    (i.hide ? "" : "checked") +
                                                    ' title="' +
                                                    (i.title || i.field) +
                                                    '" lay-filter="LAY_TABLE_TOOL_COLS"></li>'
                                            );
                                    }),
                                    e.join("")
                                );
                            })(),
                            done: function () {
                                n.on("checkbox(LAY_TABLE_TOOL_COLS)", function (e) {
                                    var i = t(e.elem),
                                        l = this.checked,
                                        n = i.data("key"),
                                        r = i.data("parentkey");
                                    layui.each(o.cols, function (e, t) {
                                        layui.each(t, function (t, i) {
                                            if (e + "-" + t === n) {
                                                var d = i.hide;
                                                (i.hide = !l),
                                                    a.elem.find('*[data-key="' + o.index + "-" + n + '"]')[l ? "removeClass" : "addClass"](y),
                                                    d != i.hide && a.setParentCol(!l, r),
                                                    a.resize();
                                            }
                                        });
                                    });
                                });
                            },
                        });
                        break;
                    case "LAYTABLE_EXPORT":
                        r.ie
                            ? l.tips("导出功能不支持 IE，请用 Chrome 等高级浏览器导出", this, { tips: 3 })
                            : s({
                                  list: (function () {
                                      return ['<li data-type="csv">导出到 Csv 文件</li>', '<li data-type="xls">导出到 Excel 文件</li>'].join("");
                                  })(),
                                  done: function (e, i) {
                                      i.on("click", function () {
                                          var e = t(this).data("type");
                                          d.exportFile(o.id, null, e);
                                      });
                                  },
                              });
                        break;
                    case "LAYTABLE_PRINT":
                        var h = window.open("打印窗口", "_blank"),
                            f = [
                                "<style>",
                                "body{font-size: 12px; color: #666;}",
                                "table{width: 100%; border-collapse: collapse; border-spacing: 0;}",
                                "th,td{line-height: 20px; padding: 9px 15px; border: 1px solid #ccc; text-align: left; font-size: 12px; color: #666;}",
                                "a{color: #666; text-decoration:none;}",
                                "*.layui-hide{display: none}",
                                "</style>",
                            ].join(""),
                            v = t(a.layHeader.html());
                        v.append(a.layMain.find("table").html()),
                            v.find("th.layui-table-patch").remove(),
                            v.find(".layui-table-col-special").remove(),
                            h.document.write(f + v.prop("outerHTML")),
                            h.document.close(),
                            h.print(),
                            h.close();
                }
                layui.event.call(this, u, "toolbar(" + p + ")", t.extend({ event: c, config: o }, {}));
            }),
                h
                    .on("mousemove", function (e) {
                        var i = t(this),
                            a = i.offset().left,
                            l = e.clientX - a;
                        i.data("unresize") || s.resizeStart || ((s.allowResize = i.width() - l <= 10), c.css("cursor", s.allowResize ? "col-resize" : ""));
                    })
                    .on("mouseleave", function () {
                        t(this);
                        s.resizeStart || c.css("cursor", "");
                    })
                    .on("mousedown", function (e) {
                        var i = t(this);
                        if (s.allowResize) {
                            var l = i.data("key");
                            e.preventDefault(),
                                (s.resizeStart = !0),
                                (s.offset = [e.clientX, e.clientY]),
                                a.getCssRule(l, function (e) {
                                    var t = e.style.width || i.outerWidth();
                                    (s.rule = e), (s.ruleWidth = parseFloat(t)), (s.minWidth = i.data("minwidth") || o.cellMinWidth);
                                });
                        }
                    }),
                R.on("mousemove", function (t) {
                    if (s.resizeStart) {
                        if ((t.preventDefault(), s.rule)) {
                            var i = s.ruleWidth + t.clientX - s.offset[0];
                            i < s.minWidth && (i = s.minWidth), (s.rule.style.width = i + "px"), l.close(a.tipsIndex);
                        }
                        e = 1;
                    }
                }).on("mouseup", function (t) {
                    s.resizeStart && ((s = {}), c.css("cursor", ""), a.scrollPatch()), 2 === e && (e = null);
                }),
                h
                    .on("click", function (i) {
                        var l,
                            n = t(this),
                            o = n.find(S),
                            r = o.attr("lay-sort");
                        return o[0] && 1 !== e ? ((l = "asc" === r ? "desc" : "desc" === r ? null : "asc"), void a.sort(n, l, null, !0)) : (e = 2);
                    })
                    .find(S + " .layui-edge ")
                    .on("click", function (e) {
                        var i = t(this),
                            l = i.index(),
                            n = i.parents("th").eq(0).data("field");
                        layui.stope(e), 0 === l ? a.sort(n, "asc", null, !0) : a.sort(n, "desc", null, !0);
                    });
            var v = function (e) {
                var l = t(this),
                    n = l.parents("tr").eq(0).data("index"),
                    o = a.layBody.find('tr[data-index="' + n + '"]'),
                    r = d.cache[a.key][n];
                return t.extend(
                    {
                        tr: o,
                        data: d.clearCacheKey(r),
                        del: function () {
                            (d.cache[a.key][n] = []), o.remove(), a.scrollPatch();
                        },
                        update: function (e) {
                            (e = e || {}),
                                layui.each(e, function (e, l) {
                                    if (e in r) {
                                        var n,
                                            d = o.children('td[data-field="' + e + '"]');
                                        (r[e] = l),
                                            a.eachCols(function (t, i) {
                                                i.field == e && i.templet && (n = i.templet);
                                            }),
                                            d.children(f).html(
                                                (function () {
                                                    return n
                                                        ? (function () {
                                                              return "function" == typeof n ? n(r) : i(t(n).html() || l).render(r);
                                                          })()
                                                        : l;
                                                })()
                                            ),
                                            d.data("content", l);
                                    }
                                });
                        },
                    },
                    e
                );
            };
            a.elem.on("click", 'input[name="layTableCheckbox"]+', function () {
                var e = t(this).prev(),
                    i = a.layBody.find('input[name="layTableCheckbox"]'),
                    l = e.parents("tr").eq(0).data("index"),
                    n = e[0].checked,
                    o = "layTableAllChoose" === e.attr("lay-filter");
                o
                    ? (i.each(function (e, t) {
                          (t.checked = n), a.setCheckData(e, n);
                      }),
                      a.syncCheckAll(),
                      a.renderForm("checkbox"))
                    : (a.setCheckData(l, n), a.syncCheckAll()),
                    layui.event.call(e[0], u, "checkbox(" + p + ")", v.call(e[0], { checked: n, type: o ? "all" : "one" }));
            }),
                a.elem.on("click", 'input[lay-type="layTableRadio"]+', function () {
                    var e = t(this).prev(),
                        i = e[0].checked,
                        l = d.cache[a.key],
                        n = e.parents("tr").eq(0).data("index");
                    layui.each(l, function (e, t) {
                        n === e ? (t.LAY_CHECKED = !0) : delete t.LAY_CHECKED;
                    }),
                        a.setThisRowChecked(n),
                        layui.event.call(this, u, "radio(" + p + ")", v.call(this, { checked: i }));
                }),
                a.layBody
                    .on("mouseenter", "tr", function () {
                        var e = t(this),
                            i = e.index();
                        a.layBody.find("tr:eq(" + i + ")").addClass(W);
                    })
                    .on("mouseleave", "tr", function () {
                        var e = t(this),
                            i = e.index();
                        a.layBody.find("tr:eq(" + i + ")").removeClass(W);
                    })
                    .on("click", "tr", function () {
                        m.call(this, "row");
                    })
                    .on("dblclick", "tr", function () {
                        m.call(this, "rowDouble");
                    });
            var m = function (e) {
                var i = t(this);
                layui.event.call(this, u, e + "(" + p + ")", v.call(i.children("td")[0]));
            };
            a.layBody
                .on("change", "." + N, function () {
                    var e = t(this),
                        i = this.value,
                        l = e.parent().data("field"),
                        n = e.parents("tr").eq(0).data("index"),
                        o = d.cache[a.key][n];
                    (o[l] = i), layui.event.call(this, u, "edit(" + p + ")", v.call(this, { value: i, field: l }));
                })
                .on("blur", "." + N, function () {
                    var e,
                        l = t(this),
                        n = l.parent().data("field"),
                        o = l.parents("tr").eq(0).data("index"),
                        r = d.cache[a.key][o];
                    a.eachCols(function (t, i) {
                        i.field == n && i.templet && (e = i.templet);
                    }),
                        l.siblings(f).html(
                            (function (a) {
                                return e
                                    ? (function () {
                                          return "function" == typeof e ? e(r) : i(t(e).html() || this.value).render(r);
                                      })()
                                    : a;
                            })(this.value)
                        ),
                        l.parent().data("content", this.value),
                        l.remove();
                }),
                a.layBody
                    .on("click", "td", function (e) {
                        var i = t(this),
                            a = (i.data("field"), i.data("edit")),
                            l = i.children(f);
                        if (!i.data("off") && a) {
                            var n = t('<input class="layui-input ' + N + '">');
                            return (n[0].value = i.data("content") || l.text()), i.find("." + N)[0] || i.append(n), n.focus(), void layui.stope(e);
                        }
                    })
                    .on("mouseenter", "td", function () {
                        b.call(this);
                    })
                    .on("mouseleave", "td", function () {
                        b.call(this, "hide");
                    });
            var g = "layui-table-grid-down",
                b = function (e) {
                    var i = t(this),
                        a = i.children(f);
                    if (e) i.find(".layui-table-grid-down").remove();
                    else if (a.prop("scrollWidth") > a.outerWidth()) {
                        if (a.find("." + g)[0]) return;
                        i.append('<div class="' + g + '"><i class="layui-icon layui-icon-down"></i></div>');
                    }
                };
            a.layBody.on("click", "." + g, function (e) {
                var i = t(this),
                    n = i.parent(),
                    d = n.children(f);
                (a.tipsIndex = l.tips(
                    [
                        '<div class="layui-table-tips-main" style="margin-top: -' +
                            (d.height() + 16) +
                            "px;" +
                            (function () {
                                return "sm" === o.size ? "padding: 4px 15px; font-size: 12px;" : "lg" === o.size ? "padding: 14px 15px;" : "";
                            })() +
                            '">',
                        d.html(),
                        "</div>",
                        '<i class="layui-icon layui-table-tips-c layui-icon-close"></i>',
                    ].join(""),
                    d[0],
                    {
                        tips: [3, ""],
                        time: -1,
                        anim: -1,
                        maxWidth: r.ios || r.android ? 300 : a.elem.width() / 2,
                        isOutAnim: !1,
                        skin: "layui-table-tips",
                        success: function (e, t) {
                            e.find(".layui-table-tips-c").on("click", function () {
                                l.close(t);
                            });
                        },
                    }
                )),
                    layui.stope(e);
            }),
                a.layBody.on("click", "*[lay-event]", function () {
                    var e = t(this),
                        i = e.parents("tr").eq(0).data("index");
                    layui.event.call(this, u, "tool(" + p + ")", v.call(this, { event: e.attr("lay-event") })), a.setThisRowChecked(i);
                }),
                a.layMain.on("scroll", function () {
                    var e = t(this),
                        i = e.scrollLeft(),
                        n = e.scrollTop();
                    a.layHeader.scrollLeft(i), a.layTotal.scrollLeft(i), a.layFixed.find(x).scrollTop(n), l.close(a.tipsIndex);
                }),
                R.on("click", function () {
                    R.trigger("table.remove.tool.panel");
                }),
                R.on("table.remove.tool.panel", function () {
                    t(".layui-table-tool-panel").remove();
                }),
                H.on("resize", function () {
                    a.resize();
                });
        }),
        (d.init = function (e, i) {
            i = i || {};
            var a = this,
                l = t(e ? 'table[lay-filter="' + e + '"]' : h + "[lay-data]"),
                n = "Table element property lay-data configuration item has a syntax error: ";
            return (
                l.each(function () {
                    var a = t(this),
                        l = a.attr("lay-data");
                    try {
                        l = new Function("return " + l)();
                    } catch (r) {
                        o.error(n + l);
                    }
                    var c = [],
                        s = t.extend(
                            { elem: this, cols: [], data: [], skin: a.attr("lay-skin"), size: a.attr("lay-size"), even: "string" == typeof a.attr("lay-even") },
                            d.config,
                            i,
                            l
                        );
                    e && a.hide(),
                        a.find("thead>tr").each(function (e) {
                            (s.cols[e] = []),
                                t(this)
                                    .children()
                                    .each(function (i) {
                                        var a = t(this),
                                            l = a.attr("lay-data");
                                        try {
                                            l = new Function("return " + l)();
                                        } catch (r) {
                                            return o.error(n + l);
                                        }
                                        var d = t.extend({ title: a.text(), colspan: a.attr("colspan") || 0, rowspan: a.attr("rowspan") || 0 }, l);
                                        d.colspan < 2 && c.push(d), s.cols[e].push(d);
                                    });
                        }),
                        a.find("tbody>tr").each(function (e) {
                            var i = t(this),
                                a = {};
                            i.children("td").each(function (e, i) {
                                var l = t(this),
                                    n = l.data("field");
                                if (n) return (a[n] = l.html());
                            }),
                                layui.each(c, function (e, t) {
                                    var l = i.children("td").eq(e);
                                    a[t.field] = l.html();
                                }),
                                (s.data[e] = a);
                        }),
                        d.render(s);
                }),
                a
            );
        }),
        (c.that = {}),
        (c.config = {}),
        (d.eachCols = function (e, i, a) {
            var l = c.config[e] || {},
                n = [],
                o = 0;
            (a = t.extend(!0, [], a || l.cols)),
                layui.each(a, function (e, t) {
                    layui.each(t, function (t, i) {
                        if (i.colGroup) {
                            var l = 0;
                            o++,
                                (i.CHILD_COLS = []),
                                layui.each(a[e + 1], function (e, t) {
                                    t.PARENT_COL_INDEX ||
                                        (l > 1 && l == i.colspan) ||
                                        ((t.PARENT_COL_INDEX = o), i.CHILD_COLS.push(t), (l += parseInt(t.colspan > 1 ? t.colspan : 1)));
                                });
                        }
                        i.PARENT_COL_INDEX || n.push(i);
                    });
                });
            var r = function (e) {
                layui.each(e || n, function (e, t) {
                    return t.CHILD_COLS ? r(t.CHILD_COLS) : void ("function" == typeof i && i(e, t));
                });
            };
            r();
        }),
        (d.checkStatus = function (e) {
            var t = 0,
                i = 0,
                a = [],
                l = d.cache[e] || [];
            return (
                layui.each(l, function (e, l) {
                    return l.constructor === Array ? void i++ : void (l[d.config.checkName] && (t++, a.push(d.clearCacheKey(l))));
                }),
                { data: a, isAll: !!l.length && t === l.length - i }
            );
        }),
        (d.exportFile = function (e, t, i) {
            (t = t || d.clearCacheKey(d.cache[e])), (i = i || "csv");
            var a = c.config[e] || {},
                l = { csv: "text/csv", xls: "application/vnd.ms-excel" }[i],
                n = document.createElement("a");
            return r.ie
                ? o.error("IE_NOT_SUPPORT_EXPORTS")
                : ((n.href =
                      "data:" +
                      l +
                      ";charset=utf-8,\ufeff" +
                      encodeURIComponent(
                          (function () {
                              var i = [],
                                  a = [];
                              return (
                                  layui.each(t, function (t, l) {
                                      var n = [];
                                      "object" == typeof e
                                          ? (layui.each(e, function (e, a) {
                                                0 == t && i.push(a || "");
                                            }),
                                            layui.each(d.clearCacheKey(l), function (e, t) {
                                                n.push(t);
                                            }))
                                          : d.eachCols(e, function (e, a) {
                                                a.field && "normal" == a.type && !a.hide && (0 == t && i.push(a.title || ""), n.push(l[a.field]));
                                            }),
                                          a.push(n.join(","));
                                  }),
                                  i.join(",") + "\r\n" + a.join("\r\n")
                              );
                          })()
                      )),
                  (n.download = (a.title || "table_" + (a.index || "")) + "." + i),
                  document.body.appendChild(n),
                  n.click(),
                  void document.body.removeChild(n));
        }),
        (d.resize = function (e) {
            if (e) {
                var t = s(e);
                if (!t) return;
                c.that[e].resize();
            } else
                layui.each(c.that, function () {
                    this.resize();
                });
        }),
        (d.reload = function (e, i) {
            i = i || {};
            var a = s(e);
            if (a) return i.data && i.data.constructor === Array && delete a.data, d.render(t.extend(!0, {}, a, i));
        }),
        (d.render = function (e) {
            var t = new F(e);
            return c.call(t);
        }),
        (d.clearCacheKey = function (e) {
            return (e = t.extend({}, e)), delete e[d.config.checkName], delete e[d.config.indexName], e;
        }),
        d.init(),
        e(u, d);
});
